package com.ych.mybatis.mapper;

import com.ych.mybatis.pojo.User;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author yangchenghao
 */
public interface UserMapper {

    /**
     * 插入数据
     * @return 受影响行数
     */
    int insertUser(User user);

    /**
     * 根据id删除用户
     * @param id 用户id
     * @return 返回受影响的记录数
     */
    int deleteUserById(Integer id);

    /**
     * 更新指定的用户的信息
     * @param user 用户对象
     * @return 返回受影响记录数
     */
    int updateUser(User user);

    /**
     * 根据id查询用户信息
     * @param id 用户id
     * @return User对象
     */
    User getUserById(Integer id);

    /**
     * 查询所有用户信息
     * @return User集合
     */
    List<User> getAllUser();
    User checkLogin(String username,String password);
    User checkLogin(Map<String,Object> map);
    Map<String,Object> getUserToMap(@Param("id") Integer id);
//    @MapKey("username")
//    Map<String,Object> getAllUserToMap();
    List<Map<String,Object>> getAllUserToMap();

    List<User> getUserByMore(User user);
}
